Hermion - Exploiting the Dynamics of Software
نویسندگان
چکیده
The current Squeak Smalltalk IDE provides a structural perspective on a software system in terms of packages, classes and methods. However, from this perspective it is difficult to gain an understanding of how source entities participate at system’s run-time. Hermion enriches the traditional IDE with a view on the dynamics of the system, (i) by offering a complementary feature-centric perspective of a software system to allow developers to reason about how specific run-time features of their software are implemented, (ii) by integrating dynamic information into the static perspective on a system, i.e., source code, and (iii) by providing mechanisms to query run-time information. 1 Enhancing the IDE with Dynamic Information The problems of understanding object-oriented software are poorly addressed by current Squeak development tools, as these tools purely focus on a structural perspective of a software system by displaying static source artifacts such as class categories, classes or methods. The running of the system, however, i.e., the execution of specific system features, is not explicitly represented in Squeak. However, as maintenance requests are typically expressed in terms of features, it is crucial for a software developer to understand the running of features. Dynamic information can enhance this understanding. To tackle the shortcoming of the existing Squeak IDE not having any explicit representation of a system’s dynamics, we propose to enhance the static perspective with a feature perspective of a software system. We present a novel feature-centric environment providing support for visual representation, interactive exploration and navigation of a system’s features [1]. Furthermore, we enrich the source code with information about its execution, i.e., run-time types of variables or precise information about methods being invoked from within a given method [2]. A third enhancement enables the developer to query gathered dynamic information from within the IDE, for instance to reveal what methods get invoked most frequently during the execution of a software feature [3]. ? Short description for the ESUG Innovation Technology Awards 2008 In the following, we give a short overview of how these three means to integrate dynamic information are implemented in our Hermion IDE, an enhanced development environment for Squeak based on the OmniBrowser framework [4]. 2 Feature-centric Environment We embed the feature-centric environment tightly in the traditional Smalltalk IDE to augment this IDE with a feature perspective of a software. This feature environment complements the traditional structural and purely textual representation of source code in a browser by presenting the developer with interactive, navigable visualizations of features in three distinct but complementary views. These views are enriched with metrics to provide the software engineer with additional information about the relevancy of source artifacts (i.e., classes and methods) to specific features. A schema of the feature-centric environment is shown in Figure 1. (1) is the test runner which is not directly part of the feature-centric environment but a separated tool. Tests are recorded scripts to execute features, but developers can also directly run the system like end-users to trigger the execution of features. The feature-centric environment contributes three different visualizations for one and the same feature: (2) the compact feature overview, (3) the feature tree view, and (4) the feature artifact browser. testCopy testCopyIntoChild testInitialized CopyCommandTest ... Test Browser tests
منابع مشابه
Sensorless Speed Control of Double Star Induction Machine With Five Level DTC Exploiting Neural Network and Extended Kalman Filter
This article presents a sensorless five level DTC control based on neural networks using Extended Kalman Filter (EKF) applied to Double Star Induction Machine (DSIM). The application of the DTC control brings a very interesting solution to the problems of robustness and dynamics. However, this control has some drawbacks such as the uncontrolled of the switching frequency and the strong ripple t...
متن کاملThe effect of developing the dynamics of library software system on information security management (Case study: Libraries of Islamic Azad universities of the country)
Background and Objective: Information security is of vital importance in most organizations. This is especially central in academic libraries due to the specific type of visitors, exchange and transfer of information to the users. Thus, the purpose is to investigate the relationship of the development of library software and information security management in the libraries of Islamic Azad Uni...
متن کاملA social recommender system based on matrix factorization considering dynamics of user preferences
With the expansion of social networks, the use of recommender systems in these networks has attracted considerable attention. Recommender systems have become an important tool for alleviating the information that overload problem of users by providing personalized recommendations to a user who might like based on past preferences or observed behavior about one or various items. In these systems...
متن کاملMolecular Dynamics Simulation of Water Transportation through Aquaporin-4 in Rat Brain Cells
This paper investigates the mechanism of water transportation through aquaporin-4(AQP4) of ratbrain cells by means of molecular dynamics simulation with CHARMM software. The AQP4 wasembedded into a bilayer made of Dimystroilphosphatylcholine (DMPC). The results illustrate thatwater molecules move through AQP4's channel with change of orientation of oxygen of eachwater molecule.
متن کاملتحلیل فضایی ـ زمانی مدیریت مخاطرات آنتروپوژنیکی معادن در ایران
The appearance of Hazards in human life is affected by natural and human forces. So far, human beings were the most powerful stimulant to create these hazards and to intensify them. The negative role of human beings in environment is caused by factors like lack of knowledge, weak reaction, technology lack, aggressive ideologies and competition; in social system, however, human behavioral engine...
متن کامل